<?php

namespace App\Http\Controllers\Admin;

use Illuminate\Http\Request;
use App\Http\Controllers\Controller;

class AdminController extends Controller
{
    function __construct()
    {
        //如果要访问这个控制器必须要要先进行admin这个中间件的认证
        $this->middleware('admin', ['except' => ['login', 'loginAction']]);
    }

    //加载后台登陆页面模板方法
    function login()
    {
        return view('admin.login');
    }

    //验证用户后台登陆信息的方法
    function loginAction(Request $request)
    {
//        \DB::enableQueryLog();
        $status = \Auth::guard('admin')->attempt
        ([  'account' => $request['account'],
            'password' => $request['password']
            ]);
//        dd(\DB::getQueryLog());
        if (!$status){
//            进入这个判断体说明登陆验证失败
            return redirect(route('admin.login'))->with('error','登陆失败');
        }
//        dd('success');
        return redirect(route('admin.index'))->with('success','登陆成功');
    }

//    后台首页
    function index()
    {
        return view('admin.index');
    }

    //退出登陆的方法
    function logout()
    {
        //退出登陆可以使用laravel内置的logout方法,这个方法会清除用户会话中的身份验证信息
        \Auth::guard('admin')->logout();
      return  redirect(route('admin.login'))->with('success','退出登陆成功');
    }
}
